package com.dragon.refect.clazz;

import java.lang.reflect.Constructor;

/**
 *  如果这个Class声名为一个抽象类，一个接口，一个数组类，一个原始类型，
 *  或者void,或者这个class没有空参构造器，或者其他的一些初始化的原因，则抛出java.lang.InstantiationException
 * @author dragon
 * @since 2019/12/1
 */
public class ClassNewInstanceMethodTest {

    public static void main(String[] args) throws Exception {
//        Class<?> s = Class.forName("com.dragon.refect.clazz.ClassDemo1");
//        System.out.println(s.newInstance());
//        System.out.println(void.class.newInstance());
//        System.out.println(int.class.newInstance());
//        System.out.println(char.class.newInstance());
        int[] array = new int[2];
//        System.out.println(array.getClass().newInstance());
//        System.out.println(AbstractClazz.class.newInstance());
//        System.out.println(InterfaceA.class.newInstance());

    }
}
